home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_xemacs.idb / usr / freeware / lib / xemacs-20.4 / lisp / tm / tm-setup.el.z / tm-setup.el
Encoding:
Text File  |  1998-05-21  |  4.1 KB  |  170 lines

  1. ;;; tm-setup.el --- setup file for tm viewer.
  2.  
  3. ;; Copyright (C) 1994,1995,1996,1997 Free Software Foundation, Inc.
  4.  
  5. ;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
  6. ;; Version: $Id: tm-setup.el,v 7.11 1997/02/10 06:11:06 morioka Exp $
  7. ;; Keywords: mail, news, MIME, multimedia, multilingual, encoded-word
  8.  
  9. ;; This file is part of tm (Tools for MIME).
  10.  
  11. ;; This program is free software; you can redistribute it and/or
  12. ;; modify it under the terms of the GNU General Public License as
  13. ;; published by the Free Software Foundation; either version 2, or (at
  14. ;; your option) any later version.
  15.  
  16. ;; This program is distributed in the hope that it will be useful, but
  17. ;; WITHOUT ANY WARRANTY; without even the implied warranty of
  18. ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  19. ;; General Public License for more details.
  20.  
  21. ;; You should have received a copy of the GNU General Public License
  22. ;; along with GNU Emacs; see the file COPYING.  If not, write to the
  23. ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  24. ;; Boston, MA 02111-1307, USA.
  25.  
  26. ;;; Code:
  27.  
  28. (require 'tl-misc)
  29.  
  30.  
  31. ;;; @ for tm-view
  32. ;;;
  33.  
  34. (call-after-loaded
  35.  'tm-view
  36.  (function
  37.   (lambda ()
  38.     ;; for message/partial
  39.     (require 'tm-partial)
  40.     
  41.     ;; for anonymous ftp
  42.     (set-atype 'mime/content-decoding-condition
  43.            '((type . "message/external-body")
  44.          ("access-type" . "anon-ftp")
  45.          (method . mime-article/decode-message/external-ftp)
  46.          ))
  47.     (autoload 'mime-article/decode-message/external-ftp "tm-ftp")
  48.     
  49.     ;; for LaTeX
  50.     (set-atype 'mime/content-decoding-condition
  51.            '((type . "text/x-latex")
  52.          (method . mime/decode-text/latex)
  53.          ))
  54.     (set-atype 'mime/content-decoding-condition
  55.            '((type . "application/x-latex")
  56.          (method . mime/decode-text/latex)
  57.          ))
  58.     ;;(set-atype 'mime/content-decoding-condition
  59.     ;;     '((type . "application/octet-stream")
  60.     ;;          ("type" . "latex")
  61.     ;;          (method . mime/decode-text/latex)
  62.     ;;          ))
  63.     (autoload 'mime/decode-text/latex "tm-latex")
  64.     )))
  65.  
  66.  
  67. ;; for image/* and X-Face
  68. (defvar mime-setup-enable-inline-image
  69.   (and window-system
  70.        (or running-xemacs
  71.        (and (featurep 'mule)(module-installed-p 'bitmap))
  72.        ))
  73.   "*If it is non-nil, tm-setup sets up to use tm-image.")
  74.  
  75. (if mime-setup-enable-inline-image
  76.     (call-after-loaded 'tm-view
  77.                (function
  78.             (lambda ()
  79.               (require 'tm-image)
  80.               )))
  81.   )
  82.  
  83.  
  84. (defvar mime-setup-enable-pgp
  85.   (module-installed-p 'mailcrypt)
  86.   "*If it is non-nil, tm-setup sets uf to use tm-pgp.")
  87.  
  88. ;; for PGP
  89. (if mime-setup-enable-pgp
  90.     (call-after-loaded 'tm-view
  91.                (function
  92.             (lambda ()
  93.               (require 'tm-pgp)
  94.               )))
  95.   )
  96.  
  97.  
  98. ;;; @ for RMAIL
  99. ;;;
  100.  
  101. (defun tm-setup/load-rmail ()
  102.   (or (and (boundp 'rmail-support-mime)
  103.        rmail-support-mime)
  104.       (require 'tm-rmail)
  105.       )
  106.   (remove-hook 'rmail-mode-hook 'tm-setup/load-rmail)
  107.   )
  108.  
  109. (call-after-loaded 'rmail 'tm-setup/load-rmail 'rmail-mode-hook)
  110.  
  111.  
  112. ;;; @ for mh-e
  113. ;;;
  114.  
  115. (let ((le (function
  116.        (lambda ()
  117.          (require 'tm-mh-e)
  118.          ))
  119.       ))
  120.   (call-after-loaded 'mh-e le 'mh-folder-mode-hook)
  121.   (if (not (featurep 'mh-e))
  122.       (add-hook 'mh-letter-mode-hook le)
  123.     ))
  124.  
  125.  
  126. ;;; @ for GNUS and Gnus
  127. ;;;
  128.  
  129. (if (featurep 'gnus)
  130.     (if (boundp 'gnus-load-hook)
  131.     (require 'gnus-mime)
  132.       (require 'tm-gnus)
  133.       )
  134.   ;; for GNUS
  135.   (defvar tm-setup/use-gnusutil nil)
  136.   
  137.   (defun tm-setup/load-GNUS ()
  138.     (require 'tm-gnus)
  139.     )
  140.   
  141.   (if (and (boundp 'MULE) tm-setup/use-gnusutil)
  142.       (progn
  143.     (add-hook 'gnus-Group-mode-hook (function gnusutil-initialize))
  144.     (add-hook 'gnus-group-mode-hook (function gnusutil-initialize))
  145.     (autoload 'gnusutil-initialize "gnusutil")
  146.     (autoload 'gnusutil-add-group "gnusutil")
  147.     (add-hook 'gnusutil-initialize-hook 'tm-setup/load-GNUS)
  148.     )
  149.     (add-hook 'gnus-Startup-hook 'tm-setup/load-GNUS 'append)
  150.     (add-hook 'gnus-startup-hook 'tm-setup/load-GNUS 'append)
  151.     )
  152.   
  153.   ;; for Gnus
  154.   (defun tm-setup/load-gnus ()
  155.     (let (gnus-load-hook)
  156.       (remove-hook 'gnus-startup-hook 'tm-setup/load-GNUS)
  157.       (require 'gnus-mime)
  158.       ))
  159.   
  160.   (add-hook 'gnus-load-hook 'tm-setup/load-gnus)
  161.   )
  162.  
  163.  
  164. ;;; @ end
  165. ;;;
  166.  
  167. (provide 'tm-setup)
  168.  
  169. ;;; tm-setup.el ends here
  170.